package com.ysjy.course.service;

import com.github.pagehelper.PageInfo;
import com.wkbb.common.base.BaseService;
import com.wkbb.common.dto.ResultDTO;
import com.ysjy.course.model.BusinessReport;
import com.ysjy.course.model.MoneyStatistical;
import com.ysjy.course.model.OrgDto;
import com.ysjy.course.model.YsOrder;

import java.util.List;
import java.util.Map;

public interface OrderService extends BaseService<YsOrder> {
    ResultDTO<YsOrder> putOrder(YsOrder data) throws Exception;
    ResultDTO<Boolean> applyRefund(YsOrder data);

    YsOrder getOrderByNumber(String orderNumber);

    boolean wxPayCallback(String notityXml);

    ResultDTO<String> getPayInfo(YsOrder data);

    ResultDTO<Boolean> auditRefund(YsOrder data) throws Exception;

    ResultDTO<MoneyStatistical> getOrderMoneyStatistical(Map<String, Object> params);

    void delOrder(String orderNumber);

    PageInfo<OrgDto> getSchoolBusinessReportList(Map<String, Object> params, int pageNo, int pageSize);

    PageInfo<BusinessReport> getOrgCourseBusinessReportListByPage(Map<String, Object> params, Integer pageNo, Integer pageSize);

    PageInfo<YsOrder> getOrderListByStudent(Map<String, Object> params, int pageNo, int pageSize);

    ResultDTO<MoneyStatistical> getHomeStatistical(Map<String, Object> params);
}
